RequestFrameShape
TheRequestFrameShape
method is called to negotiate a new frame shape for the specified frame embedded in this part.
ODShape RequestFrameShape (in ODFrame embeddedFrame, in ODShape frameShape);
embeddedFrame
- A reference to an embedded frame for which the frame-shape change is requested.
frameShape
- A reference to a requested shape, expressed in the frame coordinates of the embedded frame.
- return value
- A reference to a new shape for the embedded frame, expressed in frame coordinates.
DISCUSSION
OpenDoc calls this method to initiate a frame negotiation process requested by this part's embedded part.Your part's
RequestFrameShape
method should decide what new shape to give an embedded frame, using the requested frame shape as a guideline, and return a reference to the shape object it allows the embedded frame to have. The embedded frame stores the shape as its new frame shape and returns the shape to its part so that its part knows what its new shape is. The embedded part must accept the returned shape, although it may make further requests for different shapes or additional frames.Before returning the shape object, your part's
RequestFrameShape
method should call the shape object'sAcquire
method. When the caller has finished using the returned shape object, it should call the shape object'sRelease
method.OVERRIDING
When you subclassODPart
, you can override this method. Your override method must not call its inherited method; that is, your override method must implement this method's functionality completely. This method needs to be implemented only by container parts.EXCEPTIONS
kODErrCannotEmbed
- This part does not support embedding.
SEE ALSO
TheODFrame::RequestFrameShape
method (page 331).
Table 2-1 on page 89 in OpenDoc Programmer's Guide.
"Resizing an Embedded Frame" on page 120 in OpenDoc Programmer's Guide.
For more information on frame negotiation, see the layout and embedding chapter in theOpenDoc Programmer's Guide for the MacOS .
Main | Page One | What's New | Apple Computer, Inc. | Find It | Contact Us | Help